package com.itheima.springboot_24_mq.service.impl.rabbitmq.topic.listense;

import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.messaging.handler.annotation.SendTo;
import org.springframework.stereotype.Component;

//@Component //要能够被springboot加载
public class MessageListener {
    @RabbitListener(queues = "topicQueue") //指定消息队列的名称,可以是个数组,即监听多个队列
    @SendTo("topicQueue2")//这是在本方法执行完后,将本方法的结果发往下一个待处理的队列
    public String receive(String id){
        System.out.println("lisentener从队列中达到了消息:"+id);
        return id+1;
    }
    @RabbitListener(queues = "topicQueue2") //指定消息队列的名称,可以是个数组,即监听多个队列
    public void receive2(String id){//2个监听器监听,分别监听了不同的队列;由于config层做了连接名的正则,因此2个连接名都出发了,也就是2个队列都收到了数据,于是2个linsten都执行了
        System.out.println("lisentener从队列中达到了消息2:"+id);
    }
}
